﻿using BLevy.Negocio;
using Microsoft.Reporting.WinForms;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace BLevy.UI
{
    public partial class frmSociosFechaPosibleCobroReporte : Form
    {
        private string certificado_desde;
        private string certificado_hasta;
        private int? localidad_id;
        private int? zona_id;
        private bool completo;
        public frmSociosFechaPosibleCobroReporte(string cert_desde, string cert_hasta, int? _localidad_id, int? _zona_id, bool _completo)
        {
            InitializeComponent();

            certificado_desde = cert_desde;
            certificado_hasta = cert_hasta;
            localidad_id = _localidad_id;
            zona_id = _zona_id;
            completo = _completo;
        }

        private void frmSociosFechaPosibleCobroReporte_Load(object sender, EventArgs e)
        {
            try
            {
                if (completo == true)
                {
                    var query = (from row in Negocio.Socios.FindAllConLocalidadZonaPlan()
                                 select new
                                 {
                                     numero_certificado = row.numero_certificado,
                                     nombres = row.nombres,
                                     apellido = row.apellido,
                                     direccion = row.direccion,
                                     localidad_id = row.localidad.localidad,
                                     zona_id = row.zona.zona,
                                     adicional = row.fecha_posiblecobro

                                 }).ToList();

                    ReportDataSource rds = new ReportDataSource();
                    rds = new ReportDataSource("DataSet1", query);

                    this.reportViewer1.LocalReport.ReportEmbeddedResource = "BLevy.UI.Reportes.SociosPosibleFechaCobroReporte.rdlc";

                    this.reportViewer1.LocalReport.DataSources.Add(rds);
                    this.reportViewer1.ZoomMode = Microsoft.Reporting.WinForms.ZoomMode.PageWidth;
                    this.reportViewer1.RefreshReport();
                }
                else
                {
                    var query = (from row in Negocio.Socios.FindAllConLocalidadPlanByNroCertificadoByZona(certificado_desde,
                                    certificado_hasta, localidad_id, zona_id)
                                 select new
                                 {
                                     numero_certificado = row.numero_certificado,
                                     nombres = row.nombres,
                                     apellido = row.apellido,
                                     direccion = row.direccion,
                                     localidad_id = row.localidad.localidad,
                                     zona_id = row.zona.zona,
                                     adicional = row.fecha_posiblecobro

                                 }).ToList();

                    ReportDataSource rds = new ReportDataSource();
                    rds = new ReportDataSource("DataSet1", query);

                    this.reportViewer1.LocalReport.ReportEmbeddedResource = "BLevy.UI.Reportes.SociosPosibleFechaCobroReporte.rdlc";

                    this.reportViewer1.LocalReport.DataSources.Add(rds);
                    this.reportViewer1.ZoomMode = Microsoft.Reporting.WinForms.ZoomMode.PageWidth;
                    this.reportViewer1.RefreshReport();
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
    }
}
